package org.dei.test.llqruntime;

import org.dei.perla.parser.expressions.*;
import org.dei.perla.sys.device.fpc.*;
import org.dei.perla.sys.llqruntime.datastructures.*;

/**
 * Per una data Query si occupa di contenere tutte le informazioni essenziali per la sua esecuzione
 * WHERE, TERMINATE, TABELLA!
 * @author Camplani, Fortunato, Marelli, Rota e Vigano'
 */
public class LLQInformations {
	
	private Node pWhereNode;
	private SamplingFrequenciesTable pTable;
	private FPC pFPC;
	
	
	/**
	 * Costruttore
	 * @param parNode il nodo della clausola WHERE
	 * @param parTable la tabella
	 * @param parFPC
	 */
	public LLQInformations(Node parNode, SamplingFrequenciesTable parTable, FPC parFPC) {
		
		this.pTable = parTable;
		this.pWhereNode = parNode;
		this.pFPC = parFPC;
		
	}
	
	/**
	 * Restituisce la clausola WHERE associata alla LLQ
	 */
	public Node getWhereNode() {
		
		return this.pWhereNode;
	}
	
	/**
	 * Restituisce la tabella delle frequenze associate alle clausole IF-EVERY-ELSE
	 */
	public SamplingFrequenciesTable getFrequenciesTable() {
		
		return this.pTable;
	}
	
	/**
	 * Restituisce l'elenco degli FPC attivi?
	 * @deprecated
	 */
	public FPC getLinkedFPC() {
		//SERVE?
		return null;
	}	

}
